/**
 * Clase que representa la estructura de la tabla en un objeto Java. Cada
 * atributo de la tabla es creado como variables y su formato como anotaciones
 *
 * @version 1.0, 25/04/12
 * @author avbravo
 */
package person.publisher;

import java.util.Date;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import system.general.Columna;
import system.general.Table;

@ManagedBean(name = "person_publisherBeans")
@RequestScoped
@Table(nombre = "persona_publicacion")
public class Beans {

    @Columna(nombre = "id", tipo = "Integer")
    private Integer id = 0;
    @Columna(nombre = "id_persona", tipo = "Integer")
    private Integer id_persona = 0;
    @Columna(nombre = "idl_tipo", tipo = "Integer")
    private Integer idl_tipo = 0;
    @Columna(nombre = "idl_rol", tipo = "Integer")
    private Integer idl_rol = 0;
    @Columna(nombre = "id_pais", tipo = "Integer")
    private Integer id_pais = 0;
    @Columna(nombre = "idl_disciplina", tipo = "Integer")
    private Integer idl_disciplina = 0;
    @Columna(nombre = "titulo", tipo = "String")
    private String titulo = "";
    @Columna(nombre = "editorial", tipo = "String")
    private String editorial = "";
    @Columna(nombre = "colaborador", tipo = "String")
    private String colaborador = "";
    @Columna(nombre = "fecha", tipo = "Date")
    private Date fecha = new java.util.Date();
    private location.general.Beans countryBeans = new location.general.Beans();

    public Beans() {
    }

    public Beans(int id, int id_persona, int idl_tipo, int idl_rol, int id_pais, int idl_disciplina, String titulo, String editorial, String colaborador, Date fecha, String nombrepais) {
        this.id = id;
        this.id_persona = id_persona;
        this.idl_tipo = idl_tipo;
        this.idl_rol = idl_rol;
        this.id_pais = id_pais;
        this.idl_disciplina = idl_disciplina;
        this.titulo = titulo;
        this.editorial = editorial;
        this.colaborador = colaborador;
        this.fecha = fecha;
        this.countryBeans.setNombre(nombrepais);
    }

    /**
     * Método que permite inicializar todas las variables
     */
    public void clearBeans() {
        setId(0);
        setId_Persona(0);
        setIdl_Tipo(0);
        setIdl_Rol(0);
        setId_pais(0);
        setIdl_Disciplina(0);
        setTitulo("");
        setEditorial("");
        setColaborador("");
        setFecha(new java.util.Date());
        countryBeans.clearBeans();
    }

    private String strScape(String data) {
        data = data.trim();
        data = data.replace("'", "''");
        data = data.replace("\\", "\\\\");
        return data;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return this.id;
    }

    public void setId_Persona(Integer id_Persona) {
        this.id_persona = id_Persona;
    }

    public Integer getId_Persona() {
        return this.id_persona;
    }

    public Integer getIdl_Tipo() {
        return idl_tipo;
    }

    public void setIdl_Tipo(Integer idl_Tipo) {
        this.idl_tipo = idl_Tipo;
    }

    public Integer getIdl_Rol() {
        return idl_rol;
    }

    public void setIdl_Rol(Integer idl_Rol) {
        this.idl_rol = idl_Rol;
    }

    public Integer getId_pais() {
        return id_pais;
    }

    public void setId_pais(Integer pais) {
        this.id_pais = pais;
    }

    public Integer getIdl_Disciplina() {
        return idl_disciplina;
    }

    public void setIdl_Disciplina(Integer idl_Diciplina) {
        this.idl_disciplina = idl_Diciplina;
    }

    public String getTitulo() {
        return this.titulo;
    }

    public void setTitulo(String titulo) {
        this.titulo = strScape(titulo);
    }

    public String getEditorial() {
        return this.editorial;
    }

    public void setEditorial(String editorial) {
        this.editorial = strScape(editorial);
    }

    public String getColaborador() {
        return colaborador;
    }

    public void setColaborador(String colaborador) {
        this.colaborador = strScape(colaborador);
    }

    public Date getFecha() {
        return fecha;
    }

    public void setFecha(Date fecha) {
        this.fecha = fecha;
    }

    public location.general.Beans getCountryBeans() {
        return countryBeans;
    }
}
